The present invention relates to three dimensional (3-D) graphics and volumetric imaging, and more particularly to an apparatus and method for real-time parallel and perspective projection of high resolution volumetric images.
Image rendering is the process of converting complex information to a format which is amendable to human understanding while maintaining the integrity and accuracy of the information. Volumetric data, which consists of information relating to three-dimensional phenomena, is one species of complex information that can benefit from improved image rendering techniques. The process of analyzing volumetric data to determine, from a given viewpoint, which portions of a volume are to be presented is commonly referred to as volume visualization. Traditional methods of volume visualization operate by scanning through data points in a sequential manner in order to provide an accurate representation of an object. The need to model objects in real-time and the advantage of doing so using computer graphic systems is clear.
Special purpose computer architectures and methods for volume visualization are known. Referring now to FIG. 1, a volume visualization system 1 is shown. The volume visualization system 1 includes a cubic frame buffer 2 having a skewed memory organization which enables conflict free access of a beam of voxels in any orthographic direction, a two-dimensional (2-D) skewed buffer 4, a ray projection tree 6, and two conveyers 8, 10. The conveyors are commonly referred to as barrel shifters. A first conveyor 8 is coupled between the cubic frame buffer and the two dimensional skewed buffer, while a second conveyor 10 is coupled between the two-dimensional skewed buffer and the ray projection tree. This volume visualization system is capable of providing parallel projection in O(n.sup.2 logn) time, where n is the measurement of one axis of the cubic frame buffer.
The operation and interrelationship of the cubic frame buffer 2 and the 2-D skewed buffer are shown in FIG. 2. The traditional volume visualization system 1 operates by casting viewing rays 12, originating at a pixel in a projection plane (not shown), through the cubic frame buffer 2 along a selected viewing direction. The viewing rays access a plurality of voxels 14 (defining a projection ray plane (PRP) 16) stored in the cubic frame buffer. The voxels defining the PRP are simultaneously retrieved by orthogonal beams 18 and provided to the conveyor 8.
The conveyor 8 provides a 2-D shearing of the voxels of the orthogonal beams which define the PRP. This 2-D shearing serves to align all of the voxels of each discrete viewing ray along a direction parallel to a 2-D axis of the 2-D skewed buffer to provided skewed viewing rays. Once the viewing rays are aligned in the 2-D skewed buffer, the skewed viewing rays can be retrieved and processed by the ray projection tree 6.
Before the ray projection tree 6 receives the skewed viewing rays, the accessed skewed viewing rays are provided to conveyor 10. The conveyor 10 preforms a deskewing operation in order to match the physical sequential order of the input modules of the ray projection tree 6 to the sequential order of the voxels of each viewing ray. Specifically, each viewing ray is shifted such that the first voxel in each projection ray appears at the corresponding first input position of the ray projection tree. The voxels of each ray are then processed by the ray projection tree in parallel so as to generate a pixel value associated with that projection ray.
The above-disclosed volume visualization system has substantial shortcomings and drawbacks. First, the speed at which the system operates is limited by the system architecture which provides arbitrary parallel and orthographic projections in O(n.sup.2 log n) time. Secondly, the ray projection tree requires that each projection ray be provided thereto in a specific orientation. This requires a conveyor between the two-dimensional skewed buffer and the ray projection tree which adds to the overall hardware required by the system and the time needed for volume visualization. Thirdly, the traditional system provides only surface approximations of discrete projection rays by utilizing the closest non-transparent discrete voxel to points along the discrete projection rays instead of actual values along the continuous projection rays. This provides a somewhat inaccurate representation of the object. Fourthly, the conveyors are not readily capable of shifting data in a manner required for perspective projection (fanning and defanning of data) and real-time visualization of four-dimensional (4-D) data.
It is therefore an object of the present invention to provide a method and apparatus which operate faster than existing volume visualization systems.
It is also an object of the present invention to provide a method and apparatus which is more efficient than existing volume visualization systems.
It is a further object of the present invention to provide a method and apparatus which provide better resolution and a more accurate representation of objects than existing volume visualization systems.
It is another object to the present invention to provide a method and apparatus which are readily capable of supporting perspective projection and real-time visualization of four-dimensional (4-D) data.
It is yet another object of the present invention to provide a method and apparatus which overcome the inherent disadvantages of known volume visualization systems.
Other and further objects will be made known to the artisan as a result of the present disclosure, and it is intended to include all such objects which are realized as a result of the disclosed invention.